﻿function _ConvocatoriaRequisitos() {

    this.CodigoConvocatoria = null;

    this.PreInit = function () {
        var _parent = this;
        _parent.TituloModalForm = "Requisitos de la convocatoria";
        _parent.CssModalForm = {
            'top': "40%",
            'width': '800px',
            'margin-left': function () {
                return -($(this).width() / 2);
            }
        }                
    }
    
    // Despues de cargar el formulario
    this._PostForm = function () {
        var _parent = this;
        _parent._InicializarVisualizacionControles();
        _parent._CargarEventosForm();
    }

    this._InicializarVisualizacionControles = function () {

        var _parent = this;
        var form = _parent._getForm();
    }

    /**
    Carga de eventos
    */
    this._CargarEventosForm = function () {

        var _parent = this;
        var form = _parent._getForm();

        // Función para habilitar los campos dependientes
        _parent._getContForm().find('select').change(function (sender) {
            var id = sender.target.id;
            var va = sender.target.value;
            var nr = _parent._getContForm().find("input[type='hidden'][id='CodigoNoRequerido']").val();
            var cd = _parent._getContForm().find("input[type='hidden'][id='dep#" + id + "']").val();

            if (cd != "") {
                var parts = cd.split(",");

                for (var i = 0; i < parts.length; i++) {

                    if (va == nr) {
                        _parent._getContForm().find("select[id='" + parts[i] + "']").attr("disabled", true);
                    }
                    else {
                        _parent._getContForm().find("select[id='" + parts[i] + "']").removeAttr("disabled", false);
                    }
                }
            }
        });

        form.validationEngine({
            ajaxSubmit: true,
            onValidationComplete: function (form, status) {
                if (status) {
                    form.ajaxSubmit({
                        success: function (responseText, statusText, xhr, $form) {
                            _parent._MensajesOperacion("success", "Registros grabados", "Se registraron correctamente los requisitos");
                            // Refrescando la pantalla
                            _parent.Form({ CodigoConvocatoria: _parent.CodigoConvocatoria });
                        },
                        error: function (responseText, statusText, xhr, $form) {
                            _parent._MensajesOperacion("error", "Error", "Hubo errores en el metodo");
                        }
                    });
                }
            }
        });
    }
}